#ifndef _STRAWGUI_TRANSFORM_H_
#define _STRAWGUI_TRANSFORM_H_

#include "sMath.h"
#include "sConfig.h"

#ifdef _EDITOR
#include "sRTTIObject.h"
#endif

namespace sgui
{
namespace obj
{

class sTransform
#ifdef _EDITOR
		: public rtti::sObject
#endif
{
private:
	math::sPointsf			m_position;
	math::sPointsf			m_scale;
	f32						m_rotation;
public:
	math::sPointf& getPosition();
	math::sPointf& getScale();

	const math::sPointf& getPosition() const;
	const math::sPointf& getScale() const;
	
	const f32& getRotation() const;
	void setRotation(const f32& rotation);

    void load(const db::Record &file);
    void save(db::Record &file) const;
	void clear();
	
#ifdef _EDITOR
	void exportRTTI(rtti::sInfoList& list);
#endif

    sTransform();
};

};
};

#endif